<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-br" lang="pt-br">
<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Assistente de Smiley : Guia do Usuário CodeIgniter</title>

<style type='text/css' media='all'>@import url('../userguide.css');</style>
<link rel='stylesheet' type='text/css' media='all' href='../userguide.css' />

<script type="text/javascript" src="../nav/nav.js"></script>
<script type="text/javascript" src="../nav/prototype.lite.js"></script>
<script type="text/javascript" src="../nav/moo.fx.js"></script>
<script type="text/javascript" src="../nav/user_guide_menu.js"></script>

<meta http-equiv="expires" content="-1" />
<meta http-equiv="pragma" content="no-cache" />
<meta name="robots" content="all" />
<meta name="author" content="ExpressionEngine Dev Team" />
<meta name="description" content="Guia do Usuário do CodeIgniter" />

</head>
<body>

<!-- START NAVIGATION -->
<div id="nav"><div id="nav_inner"><script type="text/javascript">create_menu('../');</script></div></div>
<div id="nav2"><a name="top"></a><a href="javascript:void(0);" onclick="myHeight.toggle();"><img src="../images/nav_toggle_darker.jpg" width="154" height="43" border="0" title="Alternar Tabela de Conteúdos" alt="Alternar Tabela de Conteúdos" /></a></div>
<div id="masthead">
<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
<tr>
<td><h1>Guia de Usuário CodeIgniter Versão 2.0.0</h1></td>
<td id="breadcrumb_right"><a href="../toc.html">Tabela de Conteúdos</a></td>
</tr>
</table>
</div>
<!-- END NAVIGATION -->


<!-- START BREADCRUMB -->
<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
<tr>
<td id="breadcrumb">
<a href="http://codeigniter.com.br/">Página Inicial</a> › 
<a href="../index.html">Guia de Usuário CodeIgniter</a> › Assistente de Smiley
</td>
<td id="searchbox"><form method="get" action="http://www.google.com.br/search"><input type="hidden" name="as_sitesearch" id="as_sitesearch" value="codeigniter.com.br/manual/" />Busca <input type="text" class="input" style="width:200px;" name="q" id="q" size="31" maxlength="255" value="" /> <input type="submit" class="submit" name="sa" value="Ok" /></form></td>
</tr>
</table>
<!-- END BREADCRUMB -->

<br clear="all" />


<!-- START CONTENT -->
<div id="content">


<h1>Assistente de Smiley</h1>

<p>O arquivo Assistente de Smiley contém funções que auxiliam no trabalho com smileys (emoticons).</p>


<h2>Carregando este Assistente</h2>

<p>Este assistente é carregado usando o seguinte código:</p>
<code>$this->load->helper('smiley');</code>

<h2>Visão Geral</h2>

<p>O Assistente de Smiley possui um renderizador que pega smileys de texto puro como <dfn>:-)</dfn> e transforma
em representação gráfica como <img src="../images/smile.gif" width="19" height="19" border="0" alt="smile!" /></p>

<p>Permite também que seja exibido um conjunto de imagens de emoticons que quando clicados serão inseridos num campo de formulário.
Por exemplo, se você tiver um blog que permita o comentário de usuários poderá, então, exibir os emoticons perto do campo de comentários.
Seus usuários poderão clicar no emoticon e com a ajuda de algum Javascript este será colocado no campo do formulários.</p>



<h2>Tutorial de Smileys(Emoticons) Clicáveis</h2>

<p>Aqui está um exemplo que demonstra como você pode criar um conjunto de emoticons clicáveis próximos do campo do formulário. Este exemplo
requer que você, primeiramente, baixe e instale as imagens de smiley, então, depois, crie um controller e uma View como descritos.</p>

<p class="important"><strong>Importante:</strong> Antes de começar, por favor <a href="http://codeigniter.com/download_files/smileys.zip">baixe os emoticons</a> e coloque-os em
um local de acesso público em seu servidor. Este assistente também assume que você tenha o array de substituição de smiley localizado em
<dfn>application/config/smileys.php</dfn></p>


<h3>O Controller</h3>

<p>Em sua pasta <dfn>application/controllers/</dfn>, crie um arquivo chamado <kbd>smileys.php</kbd> e cole o código abaixo nele.</p>

<p><strong>Importante:</strong> Mude a URL na função g<dfn>get_clickable_smileys()</dfn> abaixo de modo que aponte para
sua pasta <dfn>smiley</dfn>.</p>

<p>Você notará que além do assistente de smiley também estamos usando a <a href="../libraries/table.html">Classe Table</a>.</p>

<textarea class="textarea" style="width:100%" cols="50" rows="25">
&lt;?php

class Smileys extends CI_Controller {

	function __construct()
	{
		parent::__construct();
	}

	function index()
	{
		$this->load->helper('smiley');
		$this->load->library('table');

		$image_array = get_clickable_smileys('http://example.com/images/smileys/', 'comments');

		$col_array = $this->table->make_columns($image_array, 8);

		$data['smiley_table'] = $this->table->generate($col_array);

		$this->load->view('smiley_view', $data);
	}

}
?&gt;
</textarea>

<p>Em sua pasta <dfn>application/views/</dfn>, crie um arquivo chamado <kbd>smiley_view.php</kbd> e cole este código nele:</p>

<textarea class="textarea" style="width:100%" cols="50" rows="20">
&lt;html>
&lt;head>
&lt;title>Smileys&lt;/title>

&lt;?php echo smiley_js(); ?>

&lt;/head>
&lt;body>

&lt;form name="blog">
&lt;textarea name="comments" id="comments" cols="40" rows="4">&lt;/textarea>
&lt;/form>

&lt;p>Clique para inserir um smiley!&lt;/p>

&lt;?php echo $smiley_table; ?>

&lt;/body>
&lt;/html>
</textarea>


<p>Depois de criar o controller e a view acima, carregue-os visitando <dfn>http://www.example.com/index.php/smileys/</dfn></p>


<h3>Campo de Apelidos</h3>

<p>Ao fazer alterações na view que pode ser inconveniente para que o campo id no controlador. Para contornar esse problema,
você pode dar o seu emoticon um nome genérico que será vinculado a um id específico na sua view.</p>
<code>$image_array = get_smiley_links("http://example.com/images/smileys/", "comment_textarea_alias");</code>

<p>Para mapear o alias para o campo id, passá-los para a função smiley_js:</p>
<code>$image_array = smiley_js("comment_textarea_alias", "comments");</code>


<h1>Referência da Função</h1>

<h2>get_clickable_smileys()</h2>

<p>Retorna um array contendo suas imagens de smiley dentro de um link. Você deve fornecer a URL a sua pasta de smiley
e um campo id ou do campo alias.</p>

<code>$image_array = get_smiley_links("http://example.com/images/smileys/", "comment");</code>
<p class="important">Nota: O uso desta função sem o segundo parâmetro, em combinação com js_insert_smiley foi depreciado.</p>


<h2>smiley_js()</h2>

<p>Gera o JavaScript que permite as imagens serem clicadas e inseridas dentro do campo de formulário.
Se você forneceu um alias em vez de um id ao gerar seus links emoticons, você precisa passar o
alias e o id do formulário correspondente para a função.
Esta função é feita para ser colocada dentro da seção &lt;head&gt; de sua página web.</p>

<code>&lt;?php echo smiley_js(); ?&gt;</code>
<p class="important">Nota: Esta função substitui js_insert_smiley, que foi depreciado.</p>


<h2>parse_smileys()</h2>

<p>Pega uma string de texto como entrada e substitui o texto pelos smileys/emoticons equivalentes.
O primeiro parâmetro deve conter sua string, o segundo deve conter a URL de sua pasta de smiley:</p>

<code>
$str = 'Aqui estão alguns emoticons: :-)  ;-)';
<br />
$str = parse_smileys($str, "http://example.com/images/smileys/");
<br />
echo $str;
</code>
</div>
<!-- END CONTENT -->


<div id="footer">
<p>
Tópico Anterior:&nbsp;&nbsp;<a href="security_helper.html">Assistente de Segurança</a>
&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
<a href="#top">Topo da Página</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
<a href="../index.html">Guia de Usuário CodeIgniter</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
Próximo Assunto:&nbsp;&nbsp;<a href="string_helper.html">Assistente de String</a>
</p>
<p><a href="http://codeigniter.com.br">CodeIgniter</a> &nbsp;&middot;&nbsp; Copyright &#169; 2006 - 2011 &nbsp;&middot;&nbsp; <a href="http://ellislab.com/">EllisLab, Inc.</a></p>
</div>

</body>
</html>